package _10_formwork_method_pattern.v_common;

/**
 * @Description:
 * 抽象模板中的基本方法尽量设计为protected类型，符合迪米特法则，不需要暴露
 * 的属性或方法尽量不要设置为protected类型。实现类若非必要，尽量不要扩大父类中的访问
 * 权限。
 * 模板的执行方法就是run()方法,也就是构成的模板
 * 跟熟悉的java设计原则不同的是,父类得方法是真正的执行方法.
 * @Auther: 2019/6/15 19:09 by zhang.jy
 */
public class Client {
	public static void main(String[] args) {
		AbstractClass class1 = new ConcreteClass1();
		AbstractClass class2 = new ConcreteClass2();
		//调用模板方法
		class1.templateMethod();
		class2.templateMethod();
	}
}